<script language=javascript>
    function int2(v) {
        return Math.floor(v);
    }
    var JD = { //����Ԫ��
        Y: 2000, M: 1, D: 1, h: 12, m: 0, s: 0,
        toJD: function () { //����ת������
            var y = this.Y, m = this.M, n = 0; //ȡ������
            if (m <= 2) m += 12, y--;
            if (this.Y * 372 + this.M * 31 + this.D >= 588829)//�ж��Ƿ�Ϊ�����������1582*372+10*31+15
                n = int2(y / 100), n = 2 - n + int2(n / 4);//�Ӱ�����
            n += int2(365.25 * (y + 4716) + 0.01);    //�����������ƫ������
            n += int2(30.6 * (m + 1)) + this.D;       //�����������ƫ��������ƫ����
            n += ((this.s / 60 + this.m) / 60 + this.h) / 24 - 1524.5;
            return n;
        },
        setFromJD: function (jd) { //��������ת����
            jd += 0.5;
            var A = int2(jd), F = jd - A, D;  //ȡ������������A��С���F
            if (A >= 2299161) D = int2((A - 1867216.25) / 36524.25), A += 1 + D - int2(D / 4);
            A += 1524; //��ǰ��4����2����
            this.Y = int2((A - 122.1) / 365.25);//��
            D = A - int2(365.25 * this.Y); //ȥ�������������������
            this.M = int2(D / 30.6001);       //����
            this.D = D - int2(this.M * 30.6001);//ȥ�������������������
            this.Y -= 4716;
            this.M--;
            if (this.M > 12) this.M -= 12;
            if (this.M <= 2) this.Y++;
            //�յ�С��תΪʱ����
            F *= 24;
            this.h = int2(F);
            F -= this.h;
            F *= 60;
            this.m = int2(F);
            F -= this.m;
            F *= 60;
            this.s = F;
        },
        toStr: function () { //����תΪ��
            var Y = "     " + this.Y, M = "0" + this.M, D = "0" + this.D;
            var h = this.h, m = this.m, s = int2(this.s + .5);
            if (s >= 60) s -= 60, m++;
            if (m >= 60) m -= 60, h++;
            h = "0" + h;
            m = "0" + m;
            s = "0" + s;
            Y = Y.substr(Y.length - 5, 5);
            M = M.substr(M.length - 2, 2);
            D = D.substr(D.length - 2, 2);
            h = h.substr(h.length - 2, 2);
            m = m.substr(m.length - 2, 2);
            s = s.substr(s.length - 2, 2);
            return Y + "-" + M + "-" + D + " " + h + ":" + m + ":" + s;
        }
    };


    var gan = Array("��", "��", "��", "��", "��", "��", "��", "��", "��", "��");
    gan['��'] = 0;
    gan['��'] = 1;
    gan['��'] = 2;
    gan['��'] = 3;
    gan['��'] = 4;
    gan['��'] = 5;
    gan['��'] = 6;
    gan['��'] = 7;
    gan['��'] = 8;
    gan['��'] = 9;

    function getsjb(lun, nd, ra, rb) {//ȡ��ݱ�
        var i, j, k, p, v, v2, rn, Y;
        nd = nd.split(" ");
        for (i = 0; i < 4; i++) nd[i] -= 0;

        //��ȡ˷�պͽ���
        JD.h = 12;
        JD.m = JD.s = 0;
        ra.length = rb.length = 0;
        var n1 = -1, n2 = -1;
        var qa = new Array(), qb = new Array(), ye = new Array();
        for (i = 0; i < lun.length; i++) {
            v = lun[i];
            if (!v) continue;
            if (v.substr(0, 1) == "-") {
                Y = v - 0, rn = 1;
                continue;
            }
            if (Y == nd[0] && rn == nd[1]) n1 = qa.length;
            if (Y == nd[2] && rn == nd[3]) n2 = qa.length;
            JD.Y = Y;
            JD.M = v.substr(0, 2) - 0;
            JD.D = v.substr(2, 2) - 0;
            if (rn < 6 && JD.M > 8) JD.Y--;
            if (rn > 8 && JD.M < 5) JD.Y++;

            qa[qa.length] = JD.toJD(); //��һ
            if (v.length > 5) qb[qb.length] = v.substr(5, 5) - 0; //���ܱ�

            if (rn == 1) ye[ye.length] = qa.length - 1; //���׵��»���
            rn++;
        }
        if (n1 == -1 || n2 == -1) return 'err';

        ra.ye = ye;

        //ȡ˷
        for (i = n1; i <= n2; i++) ra[ra.length] = qa[i];
        //ȡ��
        var b0 = qa[0] + 9, k0 = 365.25 / 8;
        for (i = n1, k = 0; i <= n2; i++) {
            v = int2((qa[i] - b0) / k0 + 0.5);
            if (v >= qb.length) {
                alert('��������');
                break;
            } //�õ����˷�������
            v2 = qa[i] + qb[v] - 1;
            if (v2 - (b0 + v * k0) > 10) {
                v++;
                if (v >= qb.length) continue;
                v2 = qa[i] + qb[v] - 1;
                if ((b0 + v * k0) - v2 > 10) continue;
            }
            rb[k++] = v2;
        }

        ra.jd = ra[0] - 0.5;
        for (i = 1; i < ra.length; i++) ra[i] -= ra[0];
        ra[0] = 0;

        rb.jd = rb[0] - 0.5;
        for (i = 1; i < rb.length; i++) rb[i] -= rb[0];
        rb[0] = 0;
    }
    function nihe(r, k) {//��ϼ���
        var b = 0;
        //var k=365.2422/8; if(r[1]-r[0]<33) k=29.5306; //б��
        var i, j, kk, v;

        var k1 = k - 1, k2 = k + 1;
        for (kk = 0; kk < 12; kk++) { //���Ҵ���
            var bm = -1000, bM = 1000, bmi = -1;
            for (i = 0; i < r.length; i++) {
                v = r[i] - (k * i + b); //ֱ������Ҫ���Ƶ���
                if (v > bm) bm = v, bmi = i;
                if (v < bM) bM = v;
            }
            var h = (bM + 1 - bm) / 2;
            if (h > -1e-7) {
                b += bm + h;
                r.gk = k;
                r.gb = b;
                r.gh = h;
                return "ok";
            }
            for (i = 0; i < r.length; i++) {
                if (i == bmi) continue;
                v = ( r[i] + 1 - r[bmi] ) / (i - bmi);
                if (i < bmi && v > k1) k1 = v;
                if (i > bmi && v < k2) k2 = v;
                if (k1 > k2) return "�޽�";
            }
            k = (k1 + k2) / 2;
            b = r[bmi] - k * bmi;
        }
        return "����" + kk + "��δ�ҵ���";
    }

    function chec() {
        var i, nd = tin.innerText, ta = nlb.innerText, s = '', S = '', c2;
        var ra = new Array(), rb = new Array();
        nd = nd.split('\r\n');
        ta = ta.split('\r\n');
        for (i = 0; i < nd.length; i++) {
            if (!nd[i]) continue;
            if (getsjb(ta, nd[i], ra, rb) == 'err') alert("����ȡ����");

            c2 = nihe(rb, 365.2422 / 8);
            if (c2 == 'ok') s += (rb.gb + rb.jd).toFixed(6) + ' ' + (rb.gk / 3).toFixed(8) + ' h=' + rb.gh.toFixed(8) + '\r\n';
            else s += c2 + '\r\n';

            c2 = nihe(ra, 29 + 499 / 940);
            if (c2 == 'ok') S += (ra.gb + ra.jd).toFixed(6) + ' ' + ra.gk.toFixed(8) + ' h=' + ra.gh.toFixed(8) + '\r\n';
            else S += c2 + '\r\n';
        }

        //�������
        c2 = nihe(ra.ye, 12.37);
        if (c2 == 'ok') {
            s += '���׻��� b=' + ra.ye.gb.toFixed(6) + ' k=' + ra.ye.gk.toFixed(8) + ' h=' + ra.ye.gh.toFixed(6);
        } else s += '�����»��޽�';

        out.innerText = '������-221��10��31����-104��11��26��,˷��������2��\r\nƽ˷\r\n' + S + 'ƽ��\r\n' + s;
        JD.setFromJD(ra.jd + 0.5 + ra[ra.length - 1])
// alert( JD.toStr() );
    }


    /**
     ����
     -149 0321 �� 0221 ˷
     -217 26 ��27 ��ĩ��
     -213 15 �� 14 ���1
     -209 8 �� 7 �����2
     -174 ��6�� ��2���Ϊ����30
     -166 ��2�� 23��24
     -136 ���1�� 19��20
     ����Ϊ������㷨�ϵ���Ҫ��������������ʵ����������̫�������
     **/
</script>
<a href=index.htm>����</a>
<input type=button value='ȷ��' onclick="chec()"><br>
<textarea id=tin cols=80 rows=20>
-220 1 -216 12
-215 1 -104 12
</textarea><br>
<textarea id=out cols=80 rows=20></textarea><br>
<textarea id=nlb style="display:none">
-220
1031 10
1129 27
1229 14
0127 29
0226 16
0326 03
0425 18
0524 05
0623 22
0723
0821
0920
1019

-219
1118 08
1217 24
0116 11
0214 27
0316 14
0414 01
0514 16
0612
0712
0810
0909
1008

-218
1107 03
1207 19
0105 05
0204 22
0305 09
0404 24
0503 11
0602 28
0701
0731
0829
0928

-217
1027 14
1126 01
1225 17
0124 03
0222 19
0324 05
0423 22
0522 09
0621 24
0720
0819
0917
1017

-216
1115 11
1215 28
0113 14
0212 01
0312 17
0411 03
0510 19
0609
0709
0807
0906
1005

-215
1104 06
1204 21
0102 08
0201 25
0302 11
0401 27
0430 14
0530 30
0628 16
0728
0826
0925
1025

-214
1123 03
1223 19
0121 06
0220 22
0321 08
0420 25
0519 12
0618 27
0717
0816
0914
1014

-213
1112 14
1212 01
0110 16
0209 03
0311 19
0409 06
0509 22
0607
0707
0805
0904
1003

-212
1102 08
1201 25
1231 12
0129 27
0228 14
0328 01
0427 16
0527 03
0625 20
0725
0823
0922
1021

-211
1120 06
1219 22
0118 09
0216 25
0318 12
0416 28
0516 14
0614
0714
0812
0911
1011

-210
1109 01
1209 17
0107 03
0206 20
0307 07
0406 22
0505 09
0604 26
0703
0802
0831
0930

-209
1029 12
1128 28
1227 15
0126 01
0225 17
0326 03
0425 20
0524 07
0623 22
0722
0821
0919
1019

-208
1117 09
1217 26
0115 12
0214 28
0314 15
0413 01
0513 17
0611
0711
0809
0908
1007

-207
1106 04
1205 20
0104 07
0202 23
0304 09
0402 26
0502 13
0531 28
0630 15
0729
0828
0927
1026

-206
1125 02
1224 17
0123 04
0221 21
0323 07
0421 23
0521 10
0619 26
0719
0817
0916
1015

-205
1114 12
1214 29
0112 15
0211 02
0312 17
0411 04
0510 21
0609
0708
0807
0905
1005

-204
1103 07
1203 23
0101 10
0131 26
0229 12
0330 29
0429 15
0528 02
0627 18
0726
0825
0923
1023

-203
1121 04
1221 21
0119 08
0218 23
0319 10
0418 27
0517 12
0616 29
0715
0814
0913
1012

-202
1111 16
1210 02
0109 18
0207 05
0309 21
0407 08
0507 24
0605
0705
0803
0902
1001

-201
1031 10
1130 26
1229 13
0128 29
0226 16
0328 02
0426 18
0526 05
0624 21
0724
0822
0921
1020

-200
1119 08
1218 24
0117 10
0215 26
0316 13
0415 29
0514 16
0613
0712
0811
0909
1009

-199
1107 03
1207 18
0105 05
0204 22
0305 08
0404 24
0503 11
0602 26
0702
0731
0830
0928

-198
1028 13
1126 30
1226 16
0124 03
0223 19
0324 05
0423 22
0522 09
0621 24
0720
0819
0917
1017

-197
1116 11
1215 27
0114 13
0212 30
0314 16
0412 03
0512 19
0610
0710
0808
0907
1006

-196
1105 05
1204 22
0103 09
0201 24
0302 11
0401 27
0430 13
0530 30
0628 17
0728
0826
0925
1024

-195
1123 03
1222 19
0121 06
0219 22
0321 08
0419 25
0519 11
0618 27
0717
0816
0914
1014

-194
1112 14
1212 30
0110 17
0209 04
0310 19
0409 06
0508 23
0607 
0706
0805
0903
1003

-193
1102 08
1201 25
1231 12
0129 27
0228 14
0329 30
0428 17
0527 04
0626 19
0725
0824
0922
1022

-192
1120 06
1220 22
0119 08
0217 25
0318 12
0416 27
0516 14
0614
0714
0812
0911
1010

-191
1109 01
1208 17
0107 04
0205 20
0307 06
0405 22
0505 09
0604 25
0703
0802
0831
0930

-190
1029 12
1128 28
1227 14
0126 01
0224 18
0326 04
0424 20
0524 07
0622 22
0722
0820
0919
1019

-189
1117 09
1217 26
0115 12
0214 28
0315 14
0414 01
0513 18
0612
0711
0810
0908
1008

-188
1106 04
1206 20
0105 07
0203 22
0304 09
0402 26
0502 12
0531 28
0630 15
0729
0828
0926
1026

-187
1124 01
1224 18
0122 05
0221 20
0322 07
0421 23
0521 09
0619 26
0719
0817
0916
1015

-186
1114 13
1213 28
0112 15
0210 02
0312 18
0410 04
0510 21
0608
0708
0807
0905
1005

-185
1103 07
1203 23
0101 10
0131 26
0301 13
0331 28
0429 15
0529 02
0627 18
0727
0825
0924
1023

-184
1122 04
1222 21
0120 07
0219 23
0319 10
0418 26
0517 13
0616 29
0715
0814
0912
1012

-183
1110 15
1210 02
0108 19
0207 04
0308 21
0407 08
0507 23
0605
0705
0803
0902
1001

-182
1031 10
1129 27
1229 13
0127 29
0226 16
0327 02
0426 18
0525 05
0624 21
0724
0822
0921
1020

-181
1119 08
1218 24
0117 10
0215 27
0317 13
0415 29
0515 16
0613
0713
0811
0910
1009

-180
1108 02
1208 18
0106 05
0205 21
0305 08
0404 24
0503 10
0602 27
0701
0731
0829
0928

-179
1027 14
1126 29
1225 16
0124 03
0223 18
0324 05
0423 22
0522 08
0621 24
0720
0819
0917
1017

-178
1115 11
1215 27
0113 14
0212 01
0313 16
0412 03
0511 19
0610
0710
0808
0907
1006

-177
1105 05
1204 22
0103 09
0201 24
0303 11
0401 27
0501 14
0530 01
0629 16
0728
0827
0925
1025

-176
1124 03
1223 19
0122 05
0220 22
0321 09
0419 24
0519 11
0617 28
0717
0815
0914
1013

-175
1112 14
1211 30
0110 17
0209 03
0310 19
0409 06
0508 22
0607
0706
0805
0903
1003

-174
1101 09
1201 25
1230 11
0129 28
0227 15
0329 30
0427 17
0527 04
0626 19
0725
0824
0922
1022

-173
1120 06
1220 23
0118 09
0217 25
0318 11
0417 28
0516 14
0615 30
0714
0813
0912
1011


-172
1110 17
1209 04
0108 19
0206 06
0307 23
0405 09
0505 25
0603
0703
0801
0831
0929

-171
1029 12
1127 28
1227 14
0126 01
0224 17
0326 04
0424 20
0524 06
0622 23
0722
0820
0919
1018

-170
1117 10
1216 25
0115 12
0213 29
0315 14
0413 01
0513 18
0612
0711
0810
0908
1008

-169
1106 04
1206 20
0104 07
0203 23
0304 10
0403 25
0502 12
0601 28
0630 14
0730
0829
0927
1027

-168
1125 01
1225 18
0123 04
0222 20
0322 07
0421 23
0520 10
0619 26
0718
0817
0915
1015

-167
1113 12
1213 28
0112 15
0210 01
0312 18
0410 05
0510 20
0608
0708
0806
0905
1004

-166
1103 07
1202 24
0101 10
0130 26
0301 13
0331 28
0429 15
0529 02
0627 18
0727
0825
0924
1023

-165
1122 05
1221 21
0120 07
0218 24
0320 10
0418 26
0518 13
0616 28
0716
0815
0913
1013

-164
1111 15
1211 02
0109 18
0208 05
0308 21
0407 07
0506 24
0605
0704
0803
0901
1001

-163
1030 11
1129 26
1229 13
0127 29
0226 15
0327 02
0426 19
0525 05
0624 21
0723
0822
0920
1020

-162
1118 08
1218 24
0116 10
0215 27
0317 13
0415 29
0515 16
0613
0713
0811
0910
1009

-161
1108 02
1207 19
0106 06
0204 21
0306 08
0404 24
0504 10
0602 27
0702 13
0801
0830
0929
1028

-160
1127 29
1226 16
0125 02
0223 19
0324 06
0422 21
0522 08
0620 24
0720
0818
0917
1017

-159
1115 10
1215 27
0113 14
0212 29
0313 16
0412 03
0511 19
0610
0709
0808
0906
1006

-158
1104 06
1204 22
0102 08
0201 24
0303 11
0401 27
0501 14
0530 01
0629 16
0728
0827
0925
1025

-157
1123 03
1223 20
0121 06
0220 22
0321 08
0420 24
0519 11
0618 27
0718
0816
0915
1014

-156
1113 14
1212 01
0111 16
0209 03
0310 20
0408 06
0508 22
0606
0706
0804
0903
1003

-155
1101 09
1201 24
1230 11
0129 28
0227 14
0329 01
0427 17
0527 03
0625 20
0725
0823
0922
1021

-154
1120 07
1219 22
0118 09
0217 25
0318 11
0417 28
0516 15
0615
0714
0813
0911
1011

-153
1109 01
1209 17
0107 04
0206 20
0307 06
0406 22
0506 09
0604 25
0704
0802
0901
0930

-152
1030 11
1128 28
1228 15
0126 01
0225 17
0325 04
0424 20
0523 06
0622 23
0721
0820
0919
1018

-151
1117 09
1216 25
0115 12
0213 28
0315 15
0413 02
0513 17
0611
0711
0809
0908
1007

-150
1106 04
1205 21
0104 06
0203 23
0304 10
0403 25
0502 12
0601 29
0630 15
0730
0828
0927
1026

-149
1125 02
1224 18
0123 04
0221 20
0323 06
0422 23
0521 10
0620 25
0719
0818
0916
1016

-148
1114 12
1214 29
0112 15
0211 02
0311 18
0410 04
0509 20
0608
0707
0806
0905
1004

-147
1103 07
1202 23
0101 10
0130 26
0301 12
0330 29
0429 16
0528 02
0627 18
0726
0825
0923
1023

-146
1122 05
1221 20
0120 07
0218 24
0320 10
0418 26
0518 13
0616 29
0716
0814
0913
1012

-145
1111 16
1210 03
0109 18
0207 05
0309 20
0408 07
0507 24
0606
0705
0804
0902
1002

-144
1031 10
1130 26
1229 13
0128 29
0226 16
0327 03
0425 18
0525 05
0623 21
0723
0822
0920
1020

-143
1118 07
1218 24
0116 11
0215 26
0316 13
0415 30
0514 16
0613
0712
0811
0909
1009

-142
1108 02
1207 19
0106 05
0204 21
0306 08
0404 24
0504 11
0602 27
0702 13
0731
0830
0928
1028

-141
1126 30
1226 17
0124 02
0223 19
0325 05
0423 21
0523 08
0621 24
0721
0819
0918
1017

-140
1116 11
1215 27
0114 13
0212 30
0313 16
0411 02
0511 19
0610
0709
0808
0906
1006

-139
1104 06
1204 21
0102 08
0201 25
0302 11
0401 27
0430 14
0530 30
0628 16
0728
0826
0925
1025

-138
1123 03
1223 19
0121 06
0220 22
0321 08
0420 25
0519 12
0618 27
0717
0816
0914
1014

-137
1112 14
1212 01
0110 16
0209 03
0311 19
0409 06
0509 22
0607
0707
0805
0904
1003

-136
1102 08
1201 25
1231 12
0129 27
0228 14
0328 01
0427 16
0527 03
0625 20
0725
0823
0922
1021

-135
1120 06
1219 22
0118 09
0216 25
0318 12
0416 28
0516 14
0614
0714
0812
0911
1011

-134
1109 01
1209 17
0107 03
0206 20
0307 07
0406 22
0505 09
0604 26
0703
0802
0831
0930

-133
1029 12
1128 28
1227 15
0126 01
0225 17
0326 03
0425 20
0524 07
0623 22
0722
0821
0919
1019

-132
1117 09
1217 26
0115 12
0214 28
0314 15
0413 01
0513 17
0611
0711
0809
0908
1007

-131
1106 04
1205 20
0104 07
0202 23
0304 09
0402 26
0502 13
0531 28
0630 15
0729
0828
0927
1026

-130
1125 02
1224 17
0123 04
0221 21
0323 07
0421 23
0521 10
0619 26
0719
0817
0916
1015

-129
1114 12
1214 29
0112 15
0211 02
0312 17
0411 04
0510 21
0609
0708
0807
0905
1005

-128
1103 07
1203 23
0101 10
0131 26
0229 12
0330 29
0429 15
0528 02
0627 18
0726
0825
0923
1023

-127
1121 04
1221 21
0119 08
0218 23
0319 10
0418 27
0517 12
0616 29
0715 
0814 
0913
1012

-126
1111 16
1210 02
0109 18
0207 05
0309 21
0407 08
0507 24
0605
0705
0803
0902
1001

-125
1031 10
1130 26
1229 13
0128 29
0226 16
0328 02
0426 18
0526 05
0624 21
0724
0822
0921
1020

-124
1119 08
1218 24
0117 10
0215 26
0316 13
0415 29
0514 16
0613
0712
0811
0909
1009

-123
1107 03
1207 18
0105 05
0204 22
0305 08
0404 24
0503 11
0602 26
0702 13
0731
0830
0928
1028

-122
1126 30
1226 16
0124 03
0223 19
0324 05
0423 22
0522 09
0621 24
0720
0819
0917
1017

-121
1116 11
1215 27
0114 13
0212 30
0314 16
0412 03
0512 19
0610
0710
0808
0907
1006

-120
1105 05
1204 22
0103 09
0201 24
0302 11
0401 27
0430 13
0530 30
0628 17
0728
0826
0925
1024

-119
1123 03
1222 19
0121 06
0219 22
0321 08
0419 25
0519 11
0618 27
0717
0816
0914
1014

-118
1112 14
1212 30
0110 17
0209 04
0310 19
0409 06
0508 23
0607
0706
0805
0903
1003

-117
1102 08
1201 25
1231 12
0129 27
0228 14
0329 30
0428 17
0527 04
0626 19
0725
0824
0922
1022

-116
1120 06
1220 22
0119 08
0217 25
0318 12
0416 27
0516 14
0614
0714
0812
0911
1010

-115
1109 01
1208 17
0107 04
0205 20
0307 06
0405 22
0505 09
0604 25
0703
0802
0831
0930

-114
1029 12
1128 28
1227 14
0126 01
0224 18
0326 04
0424 20
0524 07
0622 22
0722
0820
0919
1019

-113
1117 09
1217 26
0115 12
0214 28
0315 14
0414 01
0513 18
0612
0711
0810
0908
1008

-112
1106 04
1206 20
0105 07
0203 22
0304 09
0402 26
0502 12
0531 28
0630 15
0729
0828
0926
1026

-111
1124 01
1224 18
0122 05
0221 20
0322 07
0421 23
0521 09
0619 26
0719
0817
0916
1015

-110
1114 13
1213 28
0112 15
0210 02
0312 18
0410 04
0510 21
0608
0708
0807
0905
1005

-109
1103 07
1203 23
0101 10
0131 26
0301 13
0331 28
0429 15
0529 02
0627 18
0727
0825
0924
1023

-108
1122 04
1222 21
0120 07
0219 23
0319 10
0418 26
0517 13
0616 29
0715
0814
0912
1012

-107
1110 15
1210 02
0108 19
0207 04
0308 21
0407 08
0507 23
0605
0705
0803
0902
1001

-106
1031 10
1129 27
1229 13
0127 29
0226 16
0327 02
0426 18
0525 05
0624 21
0724
0822
0921
1020

-105
1119 08
1218 24
0117 10
0215 27
0317 13
0415 29
0515 16
0613
0713
0811
0910
1009

-104
1108 02
1208 18
0106 05
0205 21
0305 08
0404 24
0503 10
0602 27
0701 14
0731 29
0829 16
0928
1027
1126
1225
0124

</textarea>